home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C / Applications / Python 1.3.3 / Python 133 SRC / Demo / tkinter / matt / radiobutton-simple.py < prev    next >
Text File  |  1995-12-21  |  2KB  |  67 lines

  1. from Tkinter import *
  2.  
  3. # This is a demo program that shows how to 
  4. # create radio buttons and how to get other widgets to 
  5. # share the information in a radio button. 
  6. # There are other ways of doing this too, but 
  7. # the "variable" option of radiobuttons seems to be the easiest.
  8. #
  9. # note how each button has a value it sets the variable to as it gets hit.
  10.  
  11.  
  12. class Test(Frame):
  13.     def printit(self):
  14.     print "hi"
  15.  
  16.     def createWidgets(self):
  17.  
  18.     self.flavor = StringVar()
  19.     self.flavor.set("chocolate")
  20.  
  21.     self.radioframe = Frame(self)
  22.     self.radioframe.pack()
  23.  
  24.     # 'text' is the label
  25.     # 'variable' is the name of the variable that all these radio buttons share
  26.     # 'value' is the value this variable takes on when the radio button is selected
  27.     # 'anchor' makes the text appear left justified (default is centered. ick)
  28.     self.radioframe.choc = Radiobutton (self.radioframe, {"text" : "Chocolate Flavor", 
  29.                                   "variable" : self.flavor,
  30.                                   "value" : "chocolate",
  31.                                   "anchor" : "w", 
  32.                                   Pack : {"side" : "top", "fill" : "x"}})
  33.  
  34.     self.radioframe.straw = Radiobutton (self.radioframe, {"text" : "Strawberry Flavor", 
  35.                                    "variable" : self.flavor,
  36.                                   "anchor" : "w", 
  37.                                    "value" : "strawberry", 
  38.                                    Pack : {"side" : "top", "fill" : "x"}})
  39.  
  40.     self.radioframe.lemon = Radiobutton (self.radioframe, {"text" : "Lemon Flavor", 
  41.                                   "anchor" : "w", 
  42.                                    "variable" : self.flavor,
  43.                                    "value" : "lemon", 
  44.                                    Pack : {"side" : "top", "fill" : "x"}})
  45.  
  46.     
  47.     # this is a text entry that lets you type in the name of a flavor too.
  48.     self.entry = Entry(self, {"textvariable" : self.flavor, 
  49.                   Pack : {"side" : "top", "fill" : "x"}})
  50.     self.QUIT = Button(self, {'text': 'QUIT', 
  51.                   'fg': 'red', 
  52.                   'command': self.quit})
  53.     
  54.     self.QUIT.pack({'side': 'bottom', 'fill': 'both'})
  55.  
  56.  
  57.  
  58.     def __init__(self, master=None):
  59.     Frame.__init__(self, master)
  60.     Pack.config(self)
  61.     self.createWidgets()
  62.  
  63. test = Test()
  64.  
  65. test.mainloop()
  66.